package com.opgea.crm.services;

import java.util.List;

import com.opgea.crm.common.vo.IssueCommentVo;
import com.opgea.crm.common.vo.IssueDashboardVo;
import com.opgea.crm.domain.entities.Issue;
import com.opgea.crm.domain.entities.SetupsValue;
import com.opgea.crm.domain.entities.security.CrmUser;

 
public interface IssueService {

	public Long create(Issue issue); 
	public void update(Issue issue);  
	public void remove(Long id);
	public Issue find(Long id);
	public List<IssueDashboardVo> findAll();
	public List<IssueDashboardVo> findAllByProjectId(long projectId);
	public List<IssueCommentVo> findAllCommentsByIssueId(long issueId);
	public List<IssueDashboardVo> issueByProjectId(Long projectId,Long priorityId,Long assigntoId,CrmUser user);   
	public List<SetupsValue> allProjectAndMembers(Long projectId);
        public List<SetupsValue> allProjects();
	public Issue findIssueById(Long issueId); 
	 
}
